/*************************************************************************
*																		 *
*				code by Miles Chen (v-mich) 2007.10.8					 *
*																		 *
*																		 *
*************************************************************************/

#pragma once


namespace System{namespace String{

#ifndef MAX_CHAR
#define MAX_CHAR		256
#endif

#ifndef SHORT_CHAR
#define SHORT_CHAR		32
#endif

	LPWSTR CopyTo(LPWSTR lpszDest, LPCWSTR lpszSrc);
	
	LPWSTR Append(LPWSTR lpszDest, LPCWSTR lpszSrc);

	LPWSTR Join(LPWSTR lpszDest, LPCWSTR lpszSrc);

	LPBYTE Join(LPBYTE lpDest, LPCBYTE lpSrc);

	BOOL StartWith(LPCWSTR lpszString, LPCWSTR lpszSymbol);

	BOOL Split(LPCWSTR lpszString, WCHAR nSymbol, LPWSTR lpszBuffer, int nDim1, int nDim2);

	size_t Length(LPCWSTR lpszString);
	
	size_t Length(LPCBYTE lpBuffer);

	int Compare(LPCWSTR lpszStr1, LPCWSTR lpszStr2);

	int IndexOf(LPCWSTR lpszString, LPCWSTR lpszSymbol, int startIndex);

	BOOL Contains(LPCWSTR lpszString, LPCWSTR lpszSymbol);

	int LastIndexOf(LPCWSTR lpszString, LPCWSTR lpszSymbol);

}}